package cn.wolfcode.trip.base.mapper;

import cn.wolfcode.trip.base.domain.Great;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface GreatMapper {
    void deleteByPrimaryKey(Long id);

    void insert(Great record);

    Great selectByPrimaryKey(Long id);

    List<Great> selectAll();

    void updateByPrimaryKey(Great record);

    Integer getCountByTravelContentId(@Param("travelContentId") Long travelContentId);

    Great selectByUserIdAndTravelContentId(@Param("travelContentId") Long travelContentId, @Param("userId") Long userId);

    void deleteRelation(@Param("travelContentId") Long travelContentId, @Param("userId") Long userId);

    List<Map> getGoodsContent(@Param("userId") Long userId);

    void insertDeleteRelation(@Param("travelContentId") Long travelContentId, @Param("userId") Long userId);

    List<Map> getDeleteGoods(@Param("userId") Long userId);

    int getDeleteCount(@Param("userId") Long userId);

    int getGoodCount(@Param("userId") Long userId);

    void updateDeleteStateById(@Param("userId") Long userId);

    void updateGoodsStateById(@Param("userId") Long userId);
}